import cv2

img = cv2.imread("hutao-1.jpg")  # 读取图像

# 获取某个像素点的值
# 注意：img[265,750]实际上指的是图片上坐标为[750,265]的位置
# 因为索引的实际上是nparray，
# 根据数列排列的方式，索引第一个值表示的是y的位置，第二个是x的位置
px = img[265, 750]  # 原图坐标为(750, 265)上的像素
print(px)  # 获取该点的像素值 [184 187 238]

# 获取图像属性
img_shape = img.shape
img_dtype = img.dtype
img_size = img.size
print(img_shape)  # (2048, 1336, 3)
print(img_dtype)  # uint8
print(img_size)  # 8208384,即2048*1336*3

# 仅获取红色通道的强度值
red = img[265, 750, 2]
print(red)  # 238

# 修改该点的像素
img[265, 750] = [0, 0, 0]
print(px)

# 修改指定区域的像素
img[265:268, 750:753] = [0, 0, 0]

cv2.imshow("HuTao", img)
cv2.waitKey()
cv2.destroyAllWindows()


